package com.wsd.service;

import com.wsd.domain.Loan;
import com.wsd.domain.LoanInformation;
import com.wsd.domain.RepayPlan;

import java.util.List;

/**
 * @author Wan Yucan
 * @date 2020/7/15-14:12
 */

public interface ILoanService {
    /**
     *用于输入贷款信息浏览还款数据
     * 传入贷款类，返回贷款列表
     * @param loan 贷款类
     * @return List<RepayPlan>，列表中每一项为每月还款计划
     * *by WangYuCan
     */
    List<RepayPlan> loanRepayment(Loan loan);
    /**
     * @param loan
     * 确认贷款，传入贷款类，更新数据库中个人额度信息，并将贷款信息和还款计划插入数据库，等待定时任务审核。
     * by WangYuCan
     */
    boolean ensureLoan(Loan loan);
    /**
     *查询所有申请中中的贷款,供定时任务使用
     * @return 以贷款信息列表形式返回
     * By WangYuCan
     */
    List<LoanInformation>  applyingLoanInformation();

    /**
     *根据传回的贷款信息列表，更新状态列表；
     * 用于定时任务审核
     * @param loanInformations 贷款信息列表
     * by WangYucan
     */
    void updateLoanInformationStatus(List<LoanInformation> loanInformations);

}
